Get Conversion Detail
Query the status and details of a conversion order. The API serves two purposes:
- Timeout recovery — when Create Conversion times out, query the result without retrying
- Reconciliation — query orders within a day for reconciliation
Dual Lookup Support
- By
conversion_id— if Merchant receivedconversion_idin Create Conversion response - By
origin_request_id— if Merchant did not receive Create Conversion response (timeout): use therequest_idof the Create Conversion order
For timeout when conversion_id not received, query by origin_request_id. If receiving code 430 (not found), the original order was not yet recorded on Baokim's side, Merchant is safe to retry Create Conversion with same request_id.
Workflow
Endpoint
- URL:
/api/v1/fx/conversion-detail - Method:
POST
Request
| Parameter | Data Type | Required | Description |
|---|---|---|---|
| request_id | string(50) | Yes | Unique code identifying this query request. See section 3 Introduction |
| request_time | string(19) | Yes | See section 3 Introduction |
| merchant_code | string(20) | Yes | See section 3 Introduction |
| conversion_id | string(50) | Conditional | Conversion order code to query. Required if not providing origin_request_id. |
| origin_request_id | string(50) | Conditional | request_id of the Create Conversion order to query. Required if not providing conversion_id. If both provided, conversion_id takes priority. |
Example Request — by conversion_id
{
"request_id": "MERCHANT1234BK202606050003",
"request_time": "2026-06-05 10:16:10",
"merchant_code": "MERCHANT1234",
"conversion_id": "FXC202606051015450001"
}
Example Request — by origin_request_id (timeout recovery)
{
"request_id": "MERCHANT1234BK202606050003",
"request_time": "2026-06-05 10:16:10",
"merchant_code": "MERCHANT1234",
"origin_request_id": "MERCHANT1234BK202606050002"
}
Response
| Parameter | Data Type | Required | Description |
|---|---|---|---|
| response_code | int(4) | Yes | Result code |
| response_message | string(200) | Yes | Description of the result code |
| merchant_code | string(20) | Yes | Merchant code |
| data | Object | Yes | Conversion order details (structure similar to Create Conversion response) |
data Structure
The data structure is the same as Create Conversion response:
| Parameter | Data Type | Description |
|---|---|---|
| conversion_id | string(50) | Conversion order code |
| origin_request_id | string(50) | request_id of the original order |
| status | string(20) | Order status: PROCESSING, SUCCESS, FAILED |
| quote_id | string(50) | Quote code executed |
| trade_type | string(4) | Transaction type (SELL/BUY) |
| currency_pair | string(10) | Normalized currency pair |
| rate | decimal(18,4) | Exchange rate executed |
| from_currency | string(3) | Source currency |
| from_amount | decimal(18,2) | Source amount deducted |
| to_currency | string(3) | Destination currency |
| to_amount | decimal(18,2) | Destination amount credited |
| created_at | string(19) | Order creation time |
| completed_at | string(19) | Completion time. Null when status = PROCESSING. |
Example Response
{
"response_code": 200,
"response_message": "Success",
"merchant_code": "MERCHANT1234",
"data": {
"conversion_id": "FXC202606051015450001",
"origin_request_id": "MERCHANT1234BK202606050002",
"status": "SUCCESS",
"quote_id": "FXQ0605A7K2M9XD41",
"trade_type": "SELL",
"currency_pair": "USD/VND",
"rate": 26450.0000,
"from_currency": "USD",
"from_amount": 10000.00,
"to_currency": "VND",
"to_amount": 264500000,
"created_at": "2026-06-05 10:15:45",
"completed_at": "2026-06-05 10:15:46"
}
}
Error Codes
| Response Code | Response Message | Description |
|---|---|---|
| 200 | Success | |
| 101 | System error | Unexpected error on Baokim's side |
| 110 | Invalid merchant code | merchant_code is undefined |
| 120 | Invalid Signature | Signature header is invalid |
| 422 | Validation error | Both conversion_id and origin_request_id missing, or other field invalid |
| 429 | Too many requests | Exceeded rate limit for Merchant |
| 430 | Conversion order not found | Not found with provided conversion_id or origin_request_id. If querying by origin_request_id: original order not yet recorded on Baokim, Merchant safe to retry Create Conversion. |